home *** CD-ROM | disk | FTP | other *** search
/ Chip 1996 November / Chip 11-96.iso / treiber / drucker / tally / t9108 / 9108pcl!.exe / TREIBER.MT / LASER / T9X08 / GERMAN / 9108DISK.PCL / SAMML84.MST < prev    next >
Text File  |  1996-02-14  |  9KB  |  321 lines

  1. '**************************************************************************
  2. '*                       Samsung ML-84 Setup '' 1995.6.14 yss
  3. '**************************************************************************
  4.  
  5. '$DEFINE DEBUG  ''Define for script development/debugging
  6. '$DEFINE RCP    ''yss append for samsung setup
  7. '$DEFINE SAMSUNG ''yss append to change printer name to Samsung ML-84
  8.  
  9. '$INCLUDE 'setupapi.inc'
  10. '$INCLUDE 'msdetect.inc'
  11.  
  12. ''Dialog ID's       
  13.  
  14. '$IFDEF RCP
  15. CONST INI_WININI$ = "WIN.INI"
  16. CONST INI_WINDOWS$ = "windows"
  17. CONST INI_DEVICE$ = "device"  
  18. CONST INI_DEVICES$ = "devices" 
  19.     '$IFDEF SAMSUNG
  20.         CONST INI_ML85$ = "MANNESM.Tally T9108(PCL)"  
  21.         CONST INI_ML85LPT1$ = "MANNESM.Tally T9108(PCL),LPT1"    
  22.     '$ELSE
  23.         CONST INI_ML85$ = "ML-84"  
  24.         CONST INI_ML85LPT1$ = "ML-84,LPT1"    
  25.     '$ENDIF ''SAMSUNG
  26. CONST INI_PRINTERPORTS$ = "PrinterPorts"
  27. '$ENDIF ''RCP
  28.  
  29.  
  30. CONST WELCOME       = 100
  31. CONST ASKQUIT       = 200
  32. CONST DESTPATH      = 300
  33. CONST EXITFAILURE   = 400
  34. CONST EXITQUIT      = 600
  35. CONST EXITSUCCESS   = 700
  36. CONST OPTIONS       = 800
  37. CONST APPHELP       = 900
  38. CONST BADPATH       = 6400
  39.  
  40. ''Bitmap ID
  41. CONST LOGO = 1
  42.  
  43. GLOBAL DEST$        ''Default destination directory.
  44. GLOBAL OPTCUR$      ''Option selection from option dialog.
  45.  
  46. '$IFDEF RCP
  47.     GLOBAL WINSYS$        ''Windows System directory.
  48. '$ENDIF ''RCP
  49.  
  50.  
  51.  
  52. DECLARE SUB Install
  53. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  54.  
  55.  
  56. INIT:
  57.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  58.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  59.  
  60.     SetBitmap CUIDLL$, LOGO
  61.  
  62. '$IFDEF RCP
  63.     SetTitle "Einrichtungsprogramm fⁿr MANNESMANN Tally T9108"
  64. '$ELSE
  65.     SetTitle "MSSetup Toolkit Sample 1"
  66. '$ENDIF ''RCP
  67.  
  68.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  69.     IF szInf$ = "" THEN
  70.  
  71. '$IFDEF RCP
  72.         szInf$ = GetSymbolValue("STF_CWDDIR") + "SAMML84.INF"
  73. '$ELSE
  74.         szInf$ = GetSymbolValue("STF_CWDDIR") + "SAMPLE1.INF"
  75. '$ENDIF ''RCP
  76.  
  77.     END IF
  78.     ReadInfFile szInf$
  79.  
  80.     OPTCUR$ = "1"
  81.     
  82. '$IFDEF RCP
  83.     DEST$ = "C:\RCP&SM"
  84.     WINSYS$ = GetWindowsSysDir()
  85. '$ELSE
  86.     DEST$ = "C:\DEMO"
  87. '$ENDIF ''RCP
  88.  
  89. '$IFDEF DEBUG
  90.     i% = SetSizeCheckMode(scmOnIgnore)    '' could use scmOff; def = scmOnFatal
  91.     WinDrive$ = MID$(GetWindowsDir, 1, 1)
  92.     IF IsDriveValid(WinDrive$) = 0 THEN
  93.         i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  94.         GOTO QUIT
  95.     END IF
  96. '$ENDIF ''DEBUG
  97.  
  98.  
  99. WELCOME:
  100.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  101.     IF sz$ = "CONTINUE" THEN
  102.         UIPop 1
  103.     ELSE
  104.         GOSUB ASKQUIT
  105.         GOTO WELCOME
  106.     END IF
  107.  
  108.  
  109. '$IFDEF RCP
  110. OPTION:
  111.         UIPop(1)
  112. '$ELSE
  113. OPTION:
  114.     SetSymbolValue "RadioDefault", OPTCUR$
  115. OPTL1:
  116.     sz$ = UIStartDlg(CUIDLL$, OPTIONS, "FRadioDlgProc", APPHELP, HELPPROC$)
  117.     OPTCUR$ = GetSymbolValue("ButtonChecked")
  118.  
  119.     IF sz$ = "CONTINUE" THEN
  120.         UIPop(1)
  121.     ELSEIF sz$ = "REACTIVATE" THEN
  122.         GOTO OPTL1
  123.     ELSE
  124.         GOSUB ASKQUIT
  125.         GOTO OPTION
  126.     END IF
  127. '$ENDIF ''RCP
  128.  
  129.  
  130. GETPATH:
  131.     SetSymbolValue "EditTextIn", DEST$
  132.     SetSymbolValue "EditFocus", "END"
  133. GETPATHL1:
  134.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  135.     DEST$ = GetSymbolValue("EditTextOut")
  136.  
  137.     IF sz$ = "CONTINUE" THEN
  138.         IF IsDirWritable(DEST$) = 0 THEN
  139.             GOSUB BADPATH
  140.             GOTO GETPATHL1
  141.         END IF
  142.         UIPop 1
  143.     ELSEIF sz$ = "REACTIVATE" THEN
  144.         GOTO GETPATHL1
  145.     ELSEIF sz$ = "BACK" THEN
  146.         UIPop 1  
  147. '$IFDEF RCP
  148.         GOTO WELCOME
  149. '$ELSE
  150.         GOTO OPTION
  151. '$ENDIF ''RCP
  152.     ELSE
  153.         GOSUB ASKQUIT
  154.         GOTO GETPATH
  155.     END IF
  156.  
  157.  
  158.     Install
  159.  
  160.  
  161. QUIT:
  162.     ON ERROR GOTO ERRQUIT
  163.  
  164.     IF ERR = 0 THEN
  165.         dlg% = EXITSUCCESS
  166.     ELSEIF ERR = STFQUIT THEN
  167.         dlg% = EXITQUIT
  168.     ELSE
  169.         dlg% = EXITFAILURE
  170.     END IF
  171. QUITL1:
  172.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  173.     IF sz$ = "REACTIVATE" THEN
  174.         GOTO QUITL1
  175.     END IF
  176.     UIPop 1
  177.  
  178.     END
  179.  
  180. ERRQUIT:
  181.     i% = DoMsgBox("Setup sources were corrupted, call 555-1212!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  182.     END
  183.  
  184.  
  185.  
  186. BADPATH:
  187.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  188.     IF sz$ = "REACTIVATE" THEN
  189.         GOTO BADPATH
  190.     END IF
  191.     UIPop 1
  192.     RETURN
  193.  
  194.  
  195.  
  196. ASKQUIT:
  197.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  198.  
  199.     IF sz$ = "EXIT" THEN
  200.         UIPopAll
  201.         ERROR STFQUIT
  202.     ELSEIF sz$ = "REACTIVATE" THEN
  203.         GOTO ASKQUIT
  204.     ELSE
  205.         UIPop 1
  206.     END IF
  207.     RETURN
  208.  
  209.  
  210.  
  211. '**
  212. '** Purpose:
  213. '**     Builds the copy list and performs all installation operations.
  214. '** Arguments:
  215. '**     none.
  216. '** Returns:
  217. '**     none.
  218. '*************************************************************************
  219. SUB Install STATIC
  220.  
  221.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  222.     CreateDir DEST$, cmoNone
  223.  
  224. '$IFDEF RCP
  225. '$ELSE
  226.     OpenLogFile MakePath(DEST$, "LOGFILE.OUT"), 0
  227.     WriteToLogFile ""
  228.     WriteToLogFile "  User chose as destination directory: '" + DEST$ + "'"
  229.     WriteToLogFile "  User chose option: '" + OPTCUR$ + "'"
  230.     WriteToLogFile ""
  231.     WriteToLogFile "May have had to create the directory: " + DEST$
  232.     WriteToLogFile ""
  233. '$ENDIF ''RCP
  234.  
  235. '$IFDEF RCP
  236.     ClearCopyList
  237.     AddSectionFilesToCopyList "Files", SrcDir$, DEST$
  238.     AddSectionKeyFileToCopyList "Driver", "1", SrcDir$, WINSYS$
  239. '$ENDIF ''RCP
  240.  
  241. '$IFDEF RCP
  242. '$ELSE
  243.     AddSectionKeyFileToCopyList "Options", OPTCUR$, SrcDir$, DEST$
  244. '$ENDIF ''RCP
  245.     
  246.     CopyFilesInCopyList
  247.  
  248. '$IFDEF RCP
  249. '$ELSE
  250.     ini$ = MakePath(DEST$, "DEMO.INI")
  251.     CreateIniKeyValue "WIN.INI", "MSSetup Sample 1", "Option", OPTCUR$, cmoNone
  252.     CreateIniKeyValue ini$, "Section 1", "Key 1", "Value 1" , cmoNone
  253.     CreateIniKeyValue ini$, "Section 1", "Key 2", "Value 2" , cmoNone
  254.     CreateIniKeyValue ini$, "Section 1", "Key 3", "Value 3" , cmoNone
  255. '$ENDIF ''RCP
  256.  
  257. '$IFDEF RCP
  258.     CreateProgmanGroup "MANNESMANN Tally", "", cmoNone
  259.     ShowProgmanGroup  "MANNESMANN Tally", 1, cmoNone
  260.     CreateProgmanItem "MANNESMANN Tally", "╖ Systemfernsteuerung", MakePath(DEST$,"winrcp84.exe"), "", cmoOverwrite
  261.     CreateProgmanItem "MANNESMANN Tally", "╖ Statusanzeige", MakePath(DEST$,"winsm84.exe"), "", cmoOverwrite
  262. '$ELSE
  263.     CreateProgmanGroup "MSSetup Sample 1", "", cmoNone
  264.     ShowProgmanGroup  "MSSetup Sample 1", 1, cmoNone
  265.     CreateProgmanItem "MSSetup Sample 1", "dialogs", "dlgedit.exe "+MakePath(DEST$,"dialogs.res"), "", cmoOverwrite
  266.     CreateProgmanItem "MSSetup Sample 1", "dlgprocs.c", "notepad.exe "+MakePath(DEST$,"dlgprocs.c"), "", cmoOverwrite
  267. '$ENDIF ''RCP
  268.  
  269. '$IFDEF RCP 
  270.     '$IFDEF SAMSUNG
  271.         i%= FCreateIniKeyValue (INI_WININI, INI_WINDOWS, INI_DEVICE$, "MANNESM.Tally T9108(PCL),mt9108,LPT1:", 1024) 'cmoOverwrite
  272.     '$ELSE   
  273.         i%= FCreateIniKeyValue (INI_WININI, INI_WINDOWS, INI_DEVICE$, "ML-84,ml84,LPT1:", 1024) 'cmoOverwrite
  274.     '$ENDIF ''SAMSUNG
  275.     
  276.     i%= FCreateIniKeyValue (INI_WININI, INI_DEVICES, INI_ML85$, "mt9108,LPT1:", 1024) 'cmoOverwrite
  277.     i%= FCreateIniKeyValue (INI_WININI, INI_PRINTERPORTS, INI_ML85$, "mt9108,LPT1:,45,45", 1024) 'cmoOverwrite
  278.     CreateIniKeyValue INI_WININI, INI_ML85LPT1, "prtres", "300", cmoNone
  279.     CreateIniKeyValue INI_WININI, INI_ML85LPT1, "tray", "7", cmoNone
  280.     CreateIniKeyValue INI_WININI, INI_ML85LPT1, "prtcaps", "-5240", cmoNone
  281.     CreateIniKeyValue INI_WININI, INI_ML85LPT1, "paperind", "0", cmoNone
  282.     CreateIniKeyValue INI_WININI, INI_ML85LPT1, "prtcaps2", "83", cmoNone
  283.     CreateIniKeyValue INI_WININI, INI_ML85LPT1, "CompressionMode", "2", cmoNone
  284. '$ENDIF ''RCP
  285.  
  286. '$IFDEF RCP
  287. '$ELSE
  288.     AddDos5Help "YOURAPP", "A brief help text for your Windows application."+chr$(10)+"It can be continued on another line with chr$(10).", cmoNone
  289.     CloseLogFile
  290. '$ENDIF ''RCP
  291.          
  292. END SUB
  293.  
  294.  
  295.  
  296. '**
  297. '** Purpose:
  298. '**     Appends a file name to the end of a directory path,
  299. '**     inserting a backslash character as needed.
  300. '** Arguments:
  301. '**     szDir$  - full directory path (with optional ending "\")
  302. '**     szFile$ - filename to append to directory
  303. '** Returns:
  304. '**     Resulting fully qualified path name.
  305. '*************************************************************************
  306. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  307.     IF szDir$ = "" THEN
  308.         MakePath = szFile$
  309.     ELSEIF szFile$ = "" THEN
  310.         MakePath = szDir$
  311.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  312.         MakePath = szDir$ + szFile$
  313.     ELSE
  314.         MakePath = szDir$ + "\" + szFile$
  315.     END IF
  316. END FUNCTION
  317.  
  318.  
  319.  
  320.  
  321.